﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using YunSpace.Core;
using YunSpace.Data;
using YunSpace.Domain.Entity.SiteMgr;
using YunSpace.Domain.ViewModel.Sale;
using YunSpace.Domain.ViewModel.SiteMgr;
using YunSpace.Domain.ViewModel.SiteMgr.SalesTarget;
using YunSpace.Domain.ViewModel.SiteMgr.SalesTarget;

namespace YunSpace.Domain.IRepository.SiteMgr
{
    public interface ISiteSalesTargetSettingRepository : IRepositoryBase<SiteSalesTargetSettingEntity>
    {
        /// <summary>
        /// 获取月指标列表数据
        /// </summary>
        /// <returns></returns>
        List<MonthTargetGridDto> GetMonthTargetGridDtos(Pagination pagination, GetMonthTargetGridRequest request);

        decimal GetThresholdsBy(GetMonthTargetGridRequest request);

        List<TargetAchievingRateOfLookTargetDto> GetTargetAchievingRateOfLookTargetDtos(GetLookTargetGridJsonRequest request);

        List<ReturnedAchievingRateOfLookTargetDto> GetReturnedAchievingRateOfLookTargetDtos(GetLookTargetGridJsonRequest request);

        List<ConversionRateOfLookTargetDto> GetConversionRateOfLookTargetDtos(GetLookTargetGridJsonRequest request);

        List<LookTargetDto> GetLookTargetDtos(Pagination pagination, GetLookTargetGridJsonRequest request);

    }
}
